home *** CD-ROM | disk | FTP | other *** search
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/Changelo,v
- retrieving revision 1.92
- diff -c -r1.92 Changelo
- *** 1.92 1993/03/29 03:13:26
- --- Changelo 1993/05/21 12:52:46
- ***************
- *** 3696,3698 ****
- --- 3696,3732 ----
- left for a struct mem_chunk (plus a bit more). [+ roundup ++jrb ]
-
- ---------------------------- Patchlevel 88 ---------------------------
- +
- + memcmp.c:: andreas
- + should compare with unsigned char
- +
- + strr?chr.c:: andreas
- + should not depend on signedness
- +
- + memccpy.c and memcmp.c:: andreas
- + simplified
- +
- + math-68881.h:: ++jrb
- + sync up with gnu version.
- +
- + math.h:: ++jrb
- + change all #ifdef _M68881 to
- + #if defined(_M68881) || defined(__M6881__)
- + __M68881__ gets automatically defined when gcc -m68881
- +
- + doprnt.c:: michal
- + Still, so far I found two bugs in floating point support. One
- + was introduced by Howard when he tried to catch garbled results from
- + floating point operations. He caught in the process also negative
- + zero and that was part of the reason why Scott got NaN.
- +
- + [in the part that check for overflows]
- +
- + _divdf3.cpp:: michal
- + The other part was a wrong branch in a division routine which
- + was giving a negative zero as a result of a division 0.0/1.0.
- +
- + _divdf3.cpp, _divsf3.cpp:: michal, olaff
- + Fixed sign for retinf, and retzero.
- +
- + ---------------------------- Patchlevel 89 ---------------------------
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/Makefile,v
- retrieving revision 1.17
- diff -c -r1.17 Makefile
- *** 1.17 1992/10/09 20:32:44
- --- Makefile 1993/05/21 12:52:49
- ***************
- *** 70,76 ****
- endif
-
- ifneq (,$(findstring 68020,$(TARGET)))
- ! CC := $(CC) -m68020
- endif
-
- ifneq (,$(findstring baserel,$(TARGET)))
- --- 70,76 ----
- endif
-
- ifneq (,$(findstring 68020,$(TARGET)))
- ! CC := $(CC) -m68020 -m68881
- endif
-
- ifneq (,$(findstring baserel,$(TARGET)))
- ***************
- *** 125,130 ****
- --- 125,131 ----
-
- #all: lshort llong lgshort lglong
- top: lshort llong
- + #top: l020short l020long l020bshort l020blong
-
- lshort:
- $(MAKE) clean
- ***************
- *** 132,138 ****
-
- llong:
- $(MAKE) clean
- ! $(MAKE) install TARGET=long-int
-
- lgshort:
- $(MAKE) clean
- --- 133,139 ----
-
- llong:
- $(MAKE) clean
- ! $(MAKE) install TARGET="long-int"
-
- lgshort:
- $(MAKE) clean
- ***************
- *** 144,154 ****
-
- l020short:
- $(MAKE) clean
- ! $(MAKE) install020 TARGET=68020
-
- l020long:
- $(MAKE) clean
- ! $(MAKE) install020 TARGET="68020 long-int"
-
- lbshort:
- $(MAKE) clean
- --- 145,157 ----
-
- l020short:
- $(MAKE) clean
- ! $(MAKE) install TARGET=68020
- ! # $(MAKE) install020 TARGET=68020
-
- l020long:
- $(MAKE) clean
- ! $(MAKE) install TARGET="68020 long-int"
- ! # $(MAKE) install020 TARGET="68020 long-int"
-
- lbshort:
- $(MAKE) clean
- ***************
- *** 158,163 ****
- --- 161,174 ----
- $(MAKE) clean
- $(MAKE) install TARGET="long-int baserel"
-
- + l020bshort:
- + $(MAKE) clean
- + $(MAKE) install TARGET="68020 baserel"
- +
- + l020blong:
- + $(MAKE) clean
- + $(MAKE) install TARGET="68020 long-int baserel"
- +
- realclean:
- rm -f *.o *.olb
- rm -f core report
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/PatchLev.h,v
- retrieving revision 1.64
- diff -c -r1.64 PatchLev.h
- *** 1.64 1993/03/29 03:13:29
- --- PatchLev.h 1993/05/21 12:52:51
- ***************
- *** 1,5 ****
-
- ! #define PatchLevel "88"
-
- /*
- *
- --- 1,5 ----
-
- ! #define PatchLevel "89"
-
- /*
- *
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/lib/mincl,v
- retrieving revision 1.26
- diff -c -r1.26 mincl
- *** 1.26 1993/03/16 22:09:05
- --- mincl 1993/05/21 12:52:54
- ***************
- *** 5,23 ****
- _muldf3.o _mulsf3.o _mulsi3.o _negdf2.o _negsf2.o _normdf.o _normsf.o \
- _truncdf.o _udivmod.o _umulsi3.o _fixsfsi.o _fltsisf.o _isnan.o
-
- - #GLIB2 = gnulib2.o
- - #GLIB2 = _adddi3.o _subdi3.o _muldi3.o _divdi3.o _moddi3.o _udivdi3.o \
- - # _umoddi3.o _negdi2.o _anddi3.o _iordi3.o _xordi3.o _lshrdi3.o \
- - # _lshldi3.o _ashldi3.o _ashrdi3.o _one_cmpldi2.o _bdiv.o _cmpdi2.o \
- - # _ucmpdi2.o _fixunsdfdi.o _fixdfdi.o _floatdidf.o \
- - # _fxussfsi.o _gccbcmp.o
- -
- GLIB2 = _muldi3.o _divdi3.o _moddi3.o _udivdi3.o _umoddi3.o _negdi2.o \
- _lshrdi3.o _lshldi3.o _ashldi3.o _ashrdi3.o _udivmoddi4.o _cmpdi2.o \
- _ucmpdi2.o _floatdidf.o _floatdisf.o _fixunsdfsi.o _fixunssfsi.o \
- _fixunsdfdi.o _fixdfdi.o _fixunssfdi.o _fixsfdi.o _builtin_new.o \
- _caps_New.o _builtin_del.o _trampoline.o __main.o _ctor_list.o \
- ! _dtor_list.o
-
- GCC= $(GLIB1) $(GLIB2) \
- ldexp.o frexp.o modf.o alloca.o setjmp.o osbind.o\
- --- 5,16 ----
- _muldf3.o _mulsf3.o _mulsi3.o _negdf2.o _negsf2.o _normdf.o _normsf.o \
- _truncdf.o _udivmod.o _umulsi3.o _fixsfsi.o _fltsisf.o _isnan.o
-
- GLIB2 = _muldi3.o _divdi3.o _moddi3.o _udivdi3.o _umoddi3.o _negdi2.o \
- _lshrdi3.o _lshldi3.o _ashldi3.o _ashrdi3.o _udivmoddi4.o _cmpdi2.o \
- _ucmpdi2.o _floatdidf.o _floatdisf.o _fixunsdfsi.o _fixunssfsi.o \
- _fixunsdfdi.o _fixdfdi.o _fixunssfdi.o _fixsfdi.o _builtin_new.o \
- _caps_New.o _builtin_del.o _trampoline.o __main.o _ctor_list.o \
- ! _dtor_list.o _ffsdi2.o
-
- GCC= $(GLIB1) $(GLIB2) \
- ldexp.o frexp.o modf.o alloca.o setjmp.o osbind.o\
- ***************
- *** 116,124 ****
- atof.o : flonum.h
-
- #
- ! # gnulib2 targets
- #
- ! # gnulib2 stuff (must be compiled with 32 bit ints)
-
- $(GLIB2): %.o: libgcc2.c longlong.h
- $(CC) $(CLFLAGS) -DL$* -c $< -o $@
- --- 109,117 ----
- atof.o : flonum.h
-
- #
- ! # libgcc2 targets
- #
- ! # libgcc2 stuff (must be compiled with 32 bit ints)
-
- $(GLIB2): %.o: libgcc2.c longlong.h
- $(CC) $(CLFLAGS) -DL$* -c $< -o $@
- ***************
- *** 221,227 ****
- bcmp.o: ../h/stddef.h ../h/compiler.h ../h/string.h ../h/assert.h
- filbuf.o: ../h/stdio.h ../h/stdlib.h ../h/unistd.h ../h/memory.h lib.h
- filbuf.o: ../h/time.h
- - gnulib2.o: ../h/string.h ../h/compiler.h ../h/stddef.h
- putenv.o: ../h/stddef.h ../h/compiler.h ../h/string.h ../h/stdlib.h
- sysvar.o: ../h/support.h ../h/time.h ../h/osbind.h ../h/compiler.h
- sysvar.o: ../h/ostruct.h
- --- 214,219 ----
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/_divdf3.cpp,v
- retrieving revision 1.5
- diff -c -r1.5 _divdf3.cpp
- *** 1.5 1993/03/01 17:33:59
- --- _divdf3.cpp 1993/05/21 12:55:07
- ***************
- *** 46,51 ****
- --- 46,54 ----
- |
- | patched by Olaf Flebbe (flebbe@tat.physik.uni-tuebingen.de)
- |
- + | Revision 1.2.3 olaf 4-93
- + | + Fixed sign for retinf, and retzero: it is in d2.w
- + |
- | Revision 1.2.2 olaf 12-92
- | + added support for NaN and Infinites
- | + added support for -0
- ***************
- *** 78,84 ****
-
- movel d6,d1 | d1 = v.exp
- swap d1
- ! eorw d1,d2 | d2 = u.sign ^ v.sign (in bit 31)
- lsrw #4,d1
- andw #0x07ff,d1 | kill sign bit
-
- --- 81,87 ----
-
- movel d6,d1 | d1 = v.exp
- swap d1
- ! eorw d1,d2 | d2 = u.sign ^ v.sign (in bit 15)
- lsrw #4,d1
- andw #0x07ff,d1 | kill sign bit
-
- ***************
- *** 124,130 ****
- | Return Infinity with correct sign
- |
- retinf: clrl d1
- ! tstl d2
- bpl 0f
- movel #0xfff00000,d0
- return: moveml sp@+,d2-d7
- --- 127,133 ----
- | Return Infinity with correct sign
- |
- retinf: clrl d1
- ! tstw d2
- bpl 0f
- movel #0xfff00000,d0
- return: moveml sp@+,d2-d7
- ***************
- *** 143,150 ****
- |
- retzero:clrl d0 | zero destination
- clrl d1
- ! tstl d2
- ! bmi return
- bset #31,d0
- bra return
- |
- --- 146,153 ----
- |
- retzero:clrl d0 | zero destination
- clrl d1
- ! tstw d2
- ! bge return
- bset #31,d0
- bra return
- |
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/_divsf3.cpp,v
- retrieving revision 1.5
- diff -c -r1.5 _divsf3.cpp
- *** 1.5 1993/03/01 17:34:01
- --- _divsf3.cpp 1993/05/21 12:55:08
- ***************
- *** 45,50 ****
- --- 45,53 ----
- | Based on a 80x86 floating point packet from comp.os.minix, written by P.Housel
- | patched by Olaf Flebbe (flebbe@tat.physik.uni-tuebingen.de)
- |
- + | Revision 1.2.3 olaf 5-93
- + | + correct sign bug for retinf and retzero
- + |
- | Revision 1.2.2 olaf 12-92
- | + added support for NaN and Infinites
- | + added support for -0
- ***************
- *** 77,83 ****
-
- movel d5,d1 | d1 = v.exp
- swap d1
- ! eorw d1,d2 | d2 = u.sign ^ v.sign (in bit 31)
- lsrw #7,d1
- andw #0xff,d1 | kill sign bit
-
- --- 80,86 ----
-
- movel d5,d1 | d1 = v.exp
- swap d1
- ! eorw d1,d2 | d2 = u.sign ^ v.sign (in bit 15)
- lsrw #7,d1
- andw #0xff,d1 | kill sign bit
-
- ***************
- *** 120,126 ****
- |
- | Return Infinity with correct sign
- |
- ! retinf: tstl d2
- bpl 0f
- movel #0xff800000,d0
- return: moveml sp@+,d2-d5
- --- 123,129 ----
- |
- | Return Infinity with correct sign
- |
- ! retinf: tstw d2
- bpl 0f
- movel #0xff800000,d0
- return: moveml sp@+,d2-d5
- ***************
- *** 137,144 ****
- | Return correct signed zero
- |
- retzero:clrl d0 | zero destination
- ! tstl d2
- ! bmi return
- bset #31,d0
- bra return
- |
- --- 140,147 ----
- | Return correct signed zero
- |
- retzero:clrl d0 | zero destination
- ! tstw d2
- ! bge return
- bset #31,d0
- bra return
- |
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/doprnt.c,v
- retrieving revision 1.22
- diff -c -r1.22 doprnt.c
- *** 1.22 1993/03/01 17:34:24
- --- doprnt.c 1993/05/21 12:55:09
- ***************
- *** 365,371 ****
- else
- softsign = 0;
- /* hyc: check for overflows ... */
- ! if (((unsigned long)_dd.i[0] > INF_HI) ||
- ((unsigned long)_dd.i[0] == INF_HI &&
- (unsigned long)_dd.i[1] > INF_LO))
- {
- --- 365,374 ----
- else
- softsign = 0;
- /* hyc: check for overflows ... */
- ! if ((((unsigned long)_dd.i[0] > INF_HI) &&
- ! /* mj: check for a negative zero; it is not smaller than zero, so it
- ! was not negated */
- ! (_dd.i[0] != 0x80000000 || _dd.i[1] != 0)) ||
- ((unsigned long)_dd.i[0] == INF_HI &&
- (unsigned long)_dd.i[1] > INF_LO))
- {
- ***************
- *** 883,889 ****
-
- /* get an extra slot for rounding. */
- t = ++startp;
- ! /* jrb -- #define DBL_EPSILON 1.1107651257113995e-16 /* mjr ++ /
- /*
- * get integer portion of number; put into the end of the buffer; the
- * .01 is added for modf(356.0 / 10, &integer) returning .59999999...
- --- 886,892 ----
-
- /* get an extra slot for rounding. */
- t = ++startp;
- ! /* jrb -- #define DBL_EPSILON 1.1107651257113995e-16 */ /* mjr ++ */
- /*
- * get integer portion of number; put into the end of the buffer; the
- * .01 is added for modf(356.0 / 10, &integer) returning .59999999...
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/memccpy.c,v
- retrieving revision 1.6
- diff -c -r1.6 memccpy.c
- *** 1.6 1992/03/06 19:19:47
- --- memccpy.c 1993/05/21 12:55:11
- ***************
- *** 6,21 ****
- /*
- * memccpy - copy bytes up to a certain char
- *
- - * CHARBITS should be defined only if the compiler lacks "unsigned char".
- - * It should be a mask, e.g. 0377 for an 8-bit machine.
- */
-
- - #ifndef CHARBITS
- - # define UNSCHAR(c) ((unsigned char)(c))
- - #else
- - # define UNSCHAR(c) ((c)&CHARBITS)
- - #endif
- -
- void *
- memccpy(dst, src, ucharstop, size)
- void * dst;
- --- 6,13 ----
- ***************
- *** 26,41 ****
- register char *d;
- register const char *s;
- register size_t n;
- - register int uc;
-
- if (size == 0)
- return(NULL);
-
- s = (const char *) src;
- d = (char *)dst;
- - uc = UNSCHAR(ucharstop);
- for (n = size; n > 0; n--)
- ! if (UNSCHAR(*d++ = *s++) == uc)
- return(d);
-
- return(NULL);
- --- 18,31 ----
- register char *d;
- register const char *s;
- register size_t n;
-
- if (size == 0)
- return(NULL);
-
- s = (const char *) src;
- d = (char *)dst;
- for (n = size; n > 0; n--)
- ! if ((*d++ = *s++) == (char) ucharstop)
- return(d);
-
- return(NULL);
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/memchr.c,v
- retrieving revision 1.5
- diff -c -r1.5 memchr.c
- *** 1.5 1992/03/06 19:19:47
- --- memchr.c 1993/05/21 12:55:12
- ***************
- *** 5,21 ****
-
- /*
- * memchr - search for a byte
- - *
- - * CHARBITS should be defined only if the compiler lacks "unsigned char".
- - * It should be a mask, e.g. 0377 for an 8-bit machine.
- */
-
- - #ifndef CHARBITS
- - # define UNSCHAR(c) ((unsigned char)(c))
- - #else
- - # define UNSCHAR(c) ((c)&CHARBITS)
- - #endif
- -
- void *
- memchr(s, ucharwanted, size)
- const void * s;
- --- 5,12 ----
- ***************
- *** 24,35 ****
- {
- register const char *scan;
- register size_t n;
- - register int uc;
-
- scan = (const char *) s;
- - uc = UNSCHAR(ucharwanted);
- for (n = size; n > 0; n--)
- ! if (UNSCHAR(*scan) == uc)
- return((void *)scan);
- else
- scan++;
- --- 15,24 ----
- {
- register const char *scan;
- register size_t n;
-
- scan = (const char *) s;
- for (n = size; n > 0; n--)
- ! if (*scan == (char) ucharwanted)
- return((void *)scan);
- else
- scan++;
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/memcmp.c,v
- retrieving revision 1.4
- diff -c -r1.4 memcmp.c
- *** 1.4 1992/03/06 19:19:47
- --- memcmp.c 1993/05/21 12:55:14
- ***************
- *** 5,12 ****
- --- 5,21 ----
-
- /*
- * memcmp - compare bytes
- + *
- + * CHARBITS should be defined only if the compiler lacks "unsigned char".
- + * It should be a mask, e.g. 0377 for an 8-bit machine.
- */
-
- + #ifndef CHARBITS
- + # define UNSCHAR(c) ((unsigned char)(c))
- + #else
- + # define UNSCHAR(c) ((c)&CHARBITS)
- + #endif
- +
- int /* <0, == 0, >0 */
- memcmp(s1, s2, size)
- const void * s1;
- ***************
- *** 24,30 ****
- scan1++;
- scan2++;
- } else
- ! return(*scan1 - *scan2);
-
- return(0);
- }
- --- 33,39 ----
- scan1++;
- scan2++;
- } else
- ! return(UNSCHAR (*scan1) - UNSCHAR (*scan2));
-
- return(0);
- }
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/strchr.c,v
- retrieving revision 1.9
- diff -c -r1.9 strchr.c
- *** 1.9 1992/09/14 14:56:40
- --- strchr.c 1993/05/21 12:55:15
- ***************
- *** 27,33 ****
- /*
- * The odd placement of the two tests is so NUL is findable.
- */
- ! while ((c = *s++) != charwanted)
- if (c == 0) return NULL;
- return((char *)--s);
- }
- --- 27,33 ----
- /*
- * The odd placement of the two tests is so NUL is findable.
- */
- ! while ((c = *s++) != (char) charwanted)
- if (c == 0) return NULL;
- return((char *)--s);
- }
- ===================================================================
- RCS file: /net/acae127/home/bammi/etc/src/master/atari/co/strrchr.c,v
- retrieving revision 1.10
- diff -c -r1.10 strrchr.c
- *** 1.10 1992/10/09 20:35:29
- --- strrchr.c 1993/05/21 12:55:17
- ***************
- *** 26,34 ****
-
- place = NULL;
- while ((c = *s++) != 0)
- ! if (c == charwanted)
- place = s - 1;
- ! if (charwanted == '\0')
- return((char *)--s);
- return (char *)place;
- }
- --- 26,34 ----
-
- place = NULL;
- while ((c = *s++) != 0)
- ! if (c == (char) charwanted)
- place = s - 1;
- ! if ((char) charwanted == '\0')
- return((char *)--s);
- return (char *)place;
- }
-